This application relates generally to automatic optical inspection systems, and more particularly to verifying the placement of electrical components on printed circuit boards during the manufacturing processes of printed circuit board assemblies.
Electronics manufacturers use automatic optical inspection (AOI) to verify the manufacturing steps used to build circuit board assemblies. Many circuit board assemblies employ surface-mount technology (SMT) to achieve high component count and high pin count per component. Modern SMT components can have several hundred leads spaced apart by only 12 mil centers. Only ten years ago, leads of SMT components rarely were more closely spaced than 30 mil centers. As component lead spacing diminishes, the AOI systems that inspect component assemblies must become increasingly accurate.
In a typical SMT manufacturing process, a specialized printer, such as a stencil or screen printer, applies solder paste to xe2x80x9cpadsxe2x80x9d of an unloaded, bare circuit board. xe2x80x9cPadsxe2x80x9d are conductive locations on one or both sides of a circuit board, to which the leads of SMT components can be soldered. One set of pads is provided for each SMT component, in a geometrical arrangement that matches the arrangement of leads on the component. A typical SMT circuit board includes thousands of pads. A specialized machine, called a xe2x80x9cpick-and-placexe2x80x9d machine, loads the SMT components onto the circuit board, such that the leads of each component contact the solder paste on the corresponding pads. A xe2x80x9creflow ovenxe2x80x9d then heats the circuit board, causing the solder paste to reflow. The reflowed solder bonds the SMT components to the circuit board and forms a secure electrical and mechanical connection therebetween.
FIG. 1 illustrates a typical AOI system 100 in conceptual form. A circuit board 110 is placed securely on an inspection table 112. A camera 114 is suspended above the inspection table 112 from a gantry 116, which moves the camera 114 in increments along X and Y-axes. A processor 18 controls the movement of the gantry via a control line 120, and acquires images from the camera via a data line 122. The AOI system 100 inspects the locations of features on the circuit board 110 with respect to an origin 126, which is generally located at a corner of the circuit board.
During operation of the AOI system 100, the gantry 116 moves the camera 114 over the circuit board 110. The camera 114 scans the circuit board and acquires images of the circuit board 110, and the processor 118 performs calculations on the acquired images.
The prior art has used AOI systems like the one shown in FIG. 1 to measure errors in the placement of electronic components. In accordance with the prior art process, the AOI system 100 scans the circuit board 110 to find a particular device, called a device under inspection, or xe2x80x9cDUI.xe2x80x9d The AOI system searches for the DUI through the scanned images, by matching a component shape in the scanned image with a component shape stored in the system""s database.
Once the DUI is found, the AOI system using the prior art technique computes a xe2x80x9ccentroidxe2x80x9d for the DUI. The centroid is defined as the location and orientation of the DUI relative to the origin 126 of the circuit board 110. The centroid includes both the X, Y position of the DUI and its angle, xe2x80x9c"THgr",xe2x80x9d with respect to the X-axis. Thus, for example, the SMT component 124 on the circuit board 110 might have a centroid of X=5.515xe2x80x3, Y=1.005xe2x80x3, and "THgr"=2 degrees, expressed as a coordinate (5.515, 1.005, 2). Next, the AOI system compares the measured centroid of the DUI with an expected centroid stored in the system""s database, to determine a centroid error. For example, an expected centroid of (5.520, 1.000, 0) for component 124 would yield a centroid error dX, dY, d"THgr" of (xe2x88x920.005,+0.005,+2). Last, the AOI system separately compares each component of the centroid error with separate specifications for dX, dY, and d"THgr". If any component of the centroid error exceeds its specification, the AOI system reports an unsuccessful placement. Otherwise, the system reports a successful placement.
This prior art technique has several disadvantages. First, because centroids are measured with respect to the origin 126 of the circuit board 110, the prior art technique assumes that the circuit board is dimensionally stable. Circuit boards are known to deform, however, in response to temperature, pressure, and chemical reactions. During manufacturing processes, circuit boards are subjected to all of these factors, and their linear dimensions can change by as much as +/xe2x88x922%. Any changes in the linear dimensions of a circuit board add errors to a component""s expected centroid, and therefore add errors to the resulting computations of dX, dY, and d"THgr".
That circuit boards deform means that a component could be precisely placed with respect to its expected centroid, and yet be misplaced with respect to its correct position, i.e., with respect to its pads. Under these circumstances, the prior art technique would report a successful placement although the component was not placed on its pads. Conversely, because the prior art technique relies upon an expected centroid that can be erroneous, this technique could also report a misplaced component although the component was perfectly placed on its pads.
Another drawback of the prior art technique is that it does not take into account the interdependency between the placement errors dX, dY, and d"THgr". We have recognized that the maximum acceptable angular error of a part d"THgr" depends upon the extent of the positional error dX, dY of the part. In addition, the maximum acceptable positional error dX, dY depends upon the extent of the rotational error d"THgr". For example, a component placed near the edge of its allowable X, Y range can tolerate little rotational error before some of the component""s leads move off of its pads. By comparison, a component that is centered within its X, Y range can tolerate greater rotational error.
The prior art also assumes that all pads on circuit boards align with either the X or Y-axis of a board, and directly applies dX and dY errors as if this were the case. Pads can be oriented at non-quadrant angles, however, and in these cases, the values dX and dY do not represent the correct tolerances for placing a part. For example, we have recognized that components having pads that are rotated by "THgr" degrees have actual tolerances dX1 and dY1 that respectively equal the projections of dX and dY, rotated through the angle "THgr", on the X and Y-axes. As these projections differ from dX and dY by a factor cosine ("THgr"), the prior art significantly overestimates tolerances for parts rotated by non-quadrant angles.
With the foregoing background in mind, it is an object of the invention to accurately verify the locations of components on printed circuit boards.
It is another object of the invention to reduce the number of false errors in component placement diagnosed by automatic inspection systems.
To achieve the foregoing objects and other objectives and advantages, a method of inspecting the placement of a device-under-inspection (DUI) on a circuit board includes acquiring images of the circuit board in a region where the DUI is expected to be found. The method further includes constructing a series of rectangles from the acquired images. A pad-bounding rectangle is constructed that connects a plurality of pads on the circuit board for the DUI, and a pin-bounding rectangle is constructed that connects a plurality of pins of the DUI. The plurality of pins connected by the pin-bounding rectangle corresponds to the plurality of pads connected by the pad-bounding rectangle. Starting from the pad-bounding rectangle, an error-bounding rectangle is constructed that is offset from the pad-bounding rectangle by an allowable error in placing the pins of the DUI on the pads of the circuit board. An unsuccessful placement of the DUI is then reported if any portion of the pin-bounding rectangle lies outside of the error-bounding rectangle.
In accordance with another embodiment of the invention, a method of processing images acquired by an optical inspection system is used to determine whether an object-under-inspection has been properly placed on a circuit board. The method includes constructing a series of rectangles and performing a test on the constructed rectangles. A pad-bounding rectangle is constructed from the acquired images, which connects a plurality of pads on the circuit board for the object-under-inspection. The method then searches for the object-under-inspection in the acquired images. If the object-under-inspection is found, an object-bounding rectangle is constructed that traces one of the inner and outer edges of the object-under-inspection. From the pad-bounding rectangle, an error-bounding rectangle is constructed that is offset from the pad-bounding rectangle by an allowable error in placing the object-under-inspection on the pads of the circuit board. The method further includes reporting a failure in placing the object-under-inspection if any portion of the object-bounding rectangle lies outside of the error-bounding rectangle.
In accordance with another embodiment of the invention, an optical inspection system for measuring the placement of components on a circuit board includes a camera for acquiring images of the circuit board. The optical inspection system further includes a processor, coupled to the camera, for processing the images acquired by the camera. The processor includes pad-bounding software that operates in response to the images acquired by the camera, and constructs a pad-bounding rectangle that connects a plurality of pads on the circuit board for a device under inspection (DUI). The processor also includes pin-bounding software that constructs a rectangle connecting a plurality of pins of the DUI. The plurality of pins correspond to the plurality of pads connected by the pad-bounding rectangle. The processor further includes error-bounding software that constructs an error-bounding rectangle that is offset from the pad-bounding rectangle by an allowable error in placing the pins of the DUI on the pads. Testing software then generates a successful or unsuccessful result depending on whether any portion of the pin-bounding rectangle lies outside of the error-bounding rectangle.
Additional objects, advantages and novel features of the invention will become apparent from a consideration of the ensuing description and drawings.